home *** CD-ROM | disk | FTP | other *** search
/ IRIX Installation Tools & Overlays 2002 November / SGI IRIX Installation Tools & Overlays 2002 November - Disc 4.iso / dist / motif21_dev.idb / usr / Motif-2.1 / include / Xm / ToggleBP.h.z / ToggleBP.h
C/C++ Source or Header  |  2002-10-15  |  4KB  |  162 lines

  1. /* 
  2.  *  @OSF_COPYRIGHT@
  3.  *  COPYRIGHT NOTICE
  4.  *  Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.
  5.  *  ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for
  6.  *  the full copyright text.
  7. */ 
  8. /* 
  9.  * HISTORY
  10. */ 
  11. /* $XConsortium: ToggleBP.h /main/14 1996/03/29 18:56:59 pascale $ */
  12. /* (c) Copyright 1989, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
  13. /* (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  14. /********************************************
  15.  *
  16.  *   No new fields need to be defined
  17.  *   for the Toggle widget class record
  18.  *
  19.  ********************************************/
  20.  
  21. #ifndef _XmToggleButtonP_h
  22. #define _XmToggleButtonP_h
  23.  
  24. #include <Xm/ToggleB.h>
  25. #include <Xm/LabelP.h>
  26.  
  27. #ifdef __cplusplus
  28. extern "C" {
  29. #endif
  30.  
  31. typedef struct _XmToggleButtonClassPart
  32.  {
  33.     XtPointer extension;   /* Pointer to extension record */
  34.     
  35. #ifdef _SGIMOTIF
  36.     _SgClassExtension    _SG_vendorExtension;
  37. #endif /* _SGIMOTIF */
  38.  
  39.  } XmToggleButtonClassPart;
  40.  
  41.  
  42. /****************************************************
  43.  *
  44.  * Full class record declaration for Toggle class
  45.  *
  46.  ****************************************************/
  47. typedef struct _XmToggleButtonClassRec {
  48.     CoreClassPart          core_class;
  49.     XmPrimitiveClassPart      primitive_class;
  50.     XmLabelClassPart          label_class;
  51.     XmToggleButtonClassPart    toggle_class;
  52. } XmToggleButtonClassRec;
  53.  
  54. #ifdef _SGIMOTIF 
  55.  
  56. typedef struct __SG_XmToggleExtPart {
  57.         
  58.   SgRenderIndicatorProc indicator_render;
  59.   SgRenderShadowsProc   indicator_render_shadows;
  60.   int                   indicator_visual_state;
  61.   visual_state_array    indicator_visual_array;
  62.   Pixel                 indicator_background;
  63.   shaderptr             indicator_shader;
  64.   shaderptr             indicator_select_shader;
  65.   Pixmap        locate_pixmap;
  66.   Pixmap        locate_select_pixmap;
  67.   Boolean       pixmap_locate_highlight;
  68.  
  69. }_SG_XmToggleExtPart;
  70.  
  71. typedef struct __SG_XmToggleExt {
  72.   _SgInstanceExtensionRec     common;   /* Stuff all instance rec's have */
  73.   _SG_XmToggleExtPart      instance; /* Resources & instance var's */
  74.  
  75. } _SG_XmToggleExtRec, *_SG_XmToggleExt;
  76.  
  77. #define _SG_TogglePtr(w) ((_SG_XmToggleExt)(((XmToggleButtonWidget)(w))->toggle._SG_vendorExtension))
  78.  
  79. #endif /* _SGIMOTIF */
  80.  
  81.  
  82. externalref XmToggleButtonClassRec xmToggleButtonClassRec;
  83.  
  84.  
  85. /********************************************
  86.  *
  87.  * No new fields needed for instance record
  88.  *
  89.  ********************************************/
  90.  
  91. typedef struct _XmToggleButtonPart
  92.    unsigned char    ind_type;
  93.    Boolean        visible;
  94.    Dimension        spacing;
  95.    Dimension        indicator_dim;
  96.    Boolean        indicator_set;
  97.    Pixmap        on_pixmap; 
  98.    Pixmap        insen_pixmap; 
  99.    unsigned char    set;
  100.    unsigned char    visual_set; /* used for visuals and does not reflect
  101.                                         the true state of the button */
  102.    unsigned char    ind_on;
  103.    Boolean        fill_on_select;
  104.    Pixel        select_color;
  105.    GC            select_GC;
  106.    GC            background_gc;
  107.    GC                   arm_GC;    /* used in menus when enableEtchedInMenu 
  108.                       is set. */
  109.    XtCallbackList     value_changed_CB,
  110.                         arm_CB,
  111.                         disarm_CB;
  112.    Boolean          Armed;
  113.    
  114. #ifdef _SGIMOTIF
  115.    _SG_XmToggleExt    _SG_vendorExtension;
  116. #endif
  117.  
  118.    unsigned char        toggle_mode;
  119.    Boolean        reversed_select;
  120.    Pixmap               indeterminate_pixmap;
  121.    Pixmap               indeterminate_insensitive_pixmap;
  122.    Pixel                unselect_color;
  123.    GC                   unselect_GC;
  124.    GC                   indeterminate_GC;
  125.    GC                   indeterminate_box_GC;
  126.    Dimension        ind_left_delta;
  127.    Dimension        ind_right_delta;
  128.    Dimension        ind_top_delta;
  129.    Dimension        ind_bottom_delta;
  130.    Dimension detail_shadow_thickness ;
  131. } XmToggleButtonPart;
  132.  
  133.  
  134.  
  135. /****************************************************************
  136.  *
  137.  * Full instance record declaration
  138.  *
  139.  ****************************************************************/
  140.  
  141. typedef struct _XmToggleButtonRec {
  142.     CorePart            core;
  143.     XmPrimitivePart     primitive;
  144.     XmLabelPart        label;
  145.     XmToggleButtonPart  toggle;
  146. } XmToggleButtonRec;
  147.  
  148.  
  149. /********    Private Function Declarations    ********/
  150.  
  151.  
  152. /********    End Private Function Declarations    ********/
  153.  
  154.  
  155. #ifdef __cplusplus
  156. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  157. #endif
  158.  
  159. #endif /* _XmToggleButtonP_h */
  160. /* DON'T ADD ANYTHING AFTER THIS #endif */
  161.